Continuously updating fourier coefficients every sampling interval

ABSTRACT

A method and apparatus for continually producing updated Fourier coefficient values of an input signal during each sample time. The Fourier coefficient F(k Omega ) is first calculated for any sequence of N samples of the input signal f(zT). To calculate the Fourier coefficients for the next ensuing sample time, the previously calculated Fourier coefficient value is updated by the addition of the product of the reference value and the difference between the new sample and the sample which occurred N samples earlier in time. This process is continued for each new sample.

United States Patent 1191 1111 3,778,606

Schmitt et al. Dec. 11, 1973 CONTINUOUSLY UPDATING FOURIER 3,586,8436/1971 Sloane 235/156 COEFFICIENTS EVERY SAMPLING 3,636,333 [[1972 Klund235/156 INTERVAL Primary Examiner-Felix D. Gruber [75] Inventors: JosephW. Schmrtt, Hudson; Donald Assistant Examiner David Malzahn L. Starkey,Amherst, both of NE. Att0mey LouiS Emnger [73] Assignee: SandersAssociates, Inc., Nashua,

NH. [57] ABSTRACT [22] Filed: Feb. 23, 1972 A method and apparatus forcontinually producing updated Fourier coefficient values of an inputsignal dur- [21] Appl 228545 ing each sample time. The Fouriercoefficient F(kfl) is first calculated for any sequence of N samples ofthe [52] 11.8. C1. 235/156, 235/183, 324/77 B inp ign l f(zT)- Tocalculate h F rier coeffici- [51] Int. Cl. G06t 15/34 ents for the nextensuing sample time, the previously [58] Field of Search 235/156, 181;calculated Fourier coefficient value is updated by the 324/77 B, 77 G,77 H addition of the product of the reference value and the differencebetween the new sample and the sample [56] References Cited whichoccurred N samples earlier in time. This pro- UNITED STATES PATENTS cessis continued for each new sample.

3,344,349 9/1967 Schroeder 324/77 H 4 Claims, 4 Drawing Figures STORAGEDEVICE f (zT) -10 SOURCE (DELAY OF 1' th SAMPLE FOURIER COEFFICIENTS (2+m f SAMPLE Z F (kn),F n)

Mpy ACCUMULATOR REF 516 M2 R(K.0.ZT) (/13 SOURCE CONTINUOUSLY UPDATINGFOURIER COEFFICIENTS EVERY SAMPLING INTERVAL BACKGROUND OF INVENTION A.Field of Invention This invention relates to a new and improved methodand apparatus for processing digital signals and in particular to amethod and apparatus for computing the Fourier coefficient values forthe discrete Fourier transform of a sequence of signal samples f(nt).

The discrete Fourier transform (DFT) is an algorithm which correlates anunknown signal with a known reference signal over a fixed period oftime. The DFT can be employed for various signal processing functions,such as signal filtering, correlations, convolution computations,spectral analysis, and the like. These signal processing functions haveutility in such fields as communications, seismology, sonar, radar andothers.

B. Prior Art The Fourier transform, or spectrum, of an analog signal isgiven by F(w)-L m Molt, (1)

wheref(t) and F(w) may be complex functions ofa real variable. Indigital signal processing, the signal f(t) is represented by a sequenceof N samples f(nT), where T is the sampling interval in the time domainand for n N-l. Similarly the spectrum, F(w) is represented by F(kfl),where .Q is the chosen increment between samples in the frequency domainand k is an integer for k0 l/zNT. The discrete Fourier transform (DFT)of the sequence of samplesf(nT) is then defined N-l F(kn) 2 f(nT)e- ,J fW1 In prior art DFT computational methods, the Fourier coefficientvalues are valid only once (at the end) during each integration interval1, where 'r NT. Because of this, prior art DFT techniques have beengenerally unsatisfactory for analyzing the spectral characteristicsand/or changes in an input signal with a rather fine degree ofresolution, for example, frequency spacings on the order of 0.01 Hertzor smaller. Generally, higher resolution means larger integrationinterval 1' and larger output signal sample spacings. One approach tothis problem is to employ time overlapping integration intervals fordifferent DFT multiplying and integrating channels. This solution israther costly since separate multiplying and integrating networks mustbe provided in each channel.

BRIEF SUMMARY OF THE INVENTION An object of this invention is to providenovel and improved digital signal processing apparatus.

Another object is to provide novel and improved Fourier coefficientcalculating apparatus.

Still another object is to provide novel and improved digital signalprocessing apparatus which provides a valid updated Fourier coefficientvalue for each sample of the signal being evaluated.

Yet another object is to provide a novel and improved method ofproviding an updated Fourier coefficient value for each sample of thesignal being evaluated.

In brief, the method and apparatus embodying the invention compute theFourier coefficient F(kQ) of a stream of signal samples f(zT) where T isthe sampling interval in the time domain and z. The Y f(zT) signalsamples are delayed for an interval NT, where N is the number of signalsamples in the integration interval 7 of the discrete Fourier transformof any sequence f(nT) of the f(zT) samples. where z 5 n g z+N 1. In themethod, the differences are taken between samples which are NT apart intime so as to provide a sequence of difference values. The sequence ofdifference values is then multiplied by a sequence of complex referencevalues R(kOzT) for at least one value of k so as to produce a resultingsequence of products. The products are then accumulated so as to providean updated Fourier coefficient value for each value of 2.

In apparatus embodying the invention, a storage means is provided todelay the f(nT) signal samples for an integration interval 7. Anarithmetic means is coupled to receive the signal samples f(nT) and thedelayed version thereof from the storage means and is arranged toperform the difference taking, multiplying and accumulating operationsas described above.

BRIEF DESCRIPTION OF DRAWINGS In the accompanying drawings likereference characters denote like elements of structure; and

FIG. 1 is a waveform diagram including a voltage waveform graph of anexemplary signal of which it is desired to compute the Fouriercoefficients and voltage versus time graphs which show the number ofpoints obtainable from prior art discrete Fourier transform apparatusand from discrete Fourier transform apparatus embodying the presentinvention;

FIG. 2 is a block diagram of discrete Fourier transform apparatusembodying the present invention;

FIG. 3 is a more detailed block diagram of discrete Fourier transformapparatus embodying the present invention; and

FIG. 4 is a block diagram of discrete Fourier transform apparatusembodying the present invention for cases in which the imaginary termjB(nT) can be neglected.

DESCRIPTION OF PREFERRED EMBODIMENT Equation 2 defines the DFT, F(kfl),for the sequence of signal samples f(nT) which are taken from an analogor continuous signal f(t). Although the signal f(t) can be any functionof time, it is illustrated, by way of example, by the dashed waveformflt) in FIG. 1 to be a burst of a sinusoidal wave which has a durationof one and one half cycles. The signal samples f(nT) are taken atequally spaced time intervals T in the time domain for values of 0 g nN-l, where N is the number of samples taken during each integrationinterval 1'. The discrete Fourier transform F(kQ) of the sequence ofsamples f(nT) is given by equation (2).

In the general case, the sample sequence f(nT) is a sequence of complexsignal samples of the form 3 The complex reference samples e can berewritten in the form R(knQT) M cos kIlnT j sin kQnT By substitution ofequations (3) and (4), equation (2) can be rewritten as The resultingFourier coefficient F(k().) is a complex value and can be rewritten inthe form of a real part F (kQ) given by N--1 FR kQ E A(nT)coskSZnTB(nT)sin ktlnT and of an imaginary part F,(kQ) given by N-l F UtQ)Z A(nT)sin IrSZnT+B(nT)eos lcSZnT The complex coefficient is thus givenby 8 and the voltage magnitude of the spectrum is given by It can beseen from equations (2) and that a Fourier coefficient F(kQ) can beobtained by multiplying the complex input sampleflnT) times the complexreference samples R(knQT) and integrating the products over.N samplescorresponding to an integration interval -r=NT. In the typical prior artDFT apparatus, each complex input sample f(nT) is multiplied in acomplex multiplier by a complex reference sample R(kn.QT) provided byreference generator. The output of the complex multiplier is added tothe previous sum in a digital integrator module. The sum is stored in adigital shift register between input samples. After the summation of Nsamples (the end of the integration interval 1'), a dump command isactivated so as to transfer the sum from the shift register to an outpututilization device as the Fourier coefficient. The dump command alsoserves to reset the integrator and the storage register such that a newsequence of signal samples F(nT) may be evaluated during the nextintegration interval. Accordingly, the Fourier coefficient value F(kfl)is valid only at the end of each integration interval 1-. As shown inFIG. 1, this results in only two non-zero values or points for thevoltage magnitude spectrum off(nT). It is to be noted that all threegraphs in FIG. 1 have a common time scale.

As pointed out previously, prior art attempts to achieve more Fouriercoefficient values per unit time have employed time overlappingintegration intervals with separate multiplying additions andintegration networks for each such interval. That is, the DFT integralwas separately performed for all f(nT) samples in each integrationinterval.

The method and apparatus which embody the present invention avoid all ofthese separate DFT computations for time overlapping integrationintervals. It has been discovered that once the DFT integration has beenperformed over an integration interval 1, the integration sum need onlybe updated to calculate the DFT for the next adjacent integrationinterval which is advanced by one sample time (T seconds). The updatingoperation need only consider the new signal sample gained and the oldsignal sample lost by sliding or advancing the integration interval byone sample time. In effect, the product of the old sample and thereference value is subtracted from and the product of the new sample andreference value is added to the previously calculated DFT integrationsum during each sample time. This results in a valid Fourier coefficientvalue during each sample time as shown by the voltage magnitude spectrumgraph of /F(kQ)/ in FIG. 1.

Consider that the entire stream of signal samples is given by f(zT), i2E Consider also that the discrete Fourier transform summation can takeplace over any sequence of N samples of the input signal f(zT). That is,the integration begins at any arbitrary value of z and continues to zN-l, where z n g z Nl. Accordingly, the discrete Fourier transform at afrequency of (kit) and at a sample time of (z+Nl)T is given by:

For the next adjacent integration interval which is advanced in time byone sample, the DFT is given by:

The integration sum of equation (10) includes the lost product f(zT) Fwhereas the integration sum of equation (I 1) does not. On the otherhand, the integration sum of equation 1 1 includes the gained productfl(z+N)T]e whereas equation (10) does not. Accordingly the integrationsum of equation (1 l) is essentially equation (10) minus the lostproduct and plus the gained product and can be rewritten as For areference signal which is periodic in the integration interval 7, e eEquation (12) then becomes: IU ]=I I( (2+N-l) l] +lf(( f( )l In thepractice of the present invention, the left hand term F[(kQ), (z+N-l )T]of equation (13) is first calculated during a set up or initializingperiod. This requires an initial delay of N samples or one Fourierintegration interval 7. This Fourier coefficient F[(k(l), (z+Nl )T] isthen saved or stored so that it can be updated during the next ensuingsample time by the addition of the right hand term of equation (13).This updated Fourier coefficient value is in turn saved for the nextsample time when it is also updated in accordance with equation (13 andso on. In particular during each sample time, the difference is takenbetween the samplesf(z+N )T and f(zT), which samples are NT apart intime so as to provide a sequence of difference values, one for eachsample time. This sequence of difference values is multiplied by acorresponding sequence of complex reference values R(kO.zT) e for atleast one value of k to produce a resulting sequence of products. Theproducts are accumulated from one sample time to another so as toprovide an updated Fourier coefficient value for each value of z.

With reference now to FIG. 2, discrete Fourier transform apparatusembodying the invention includes a storage device which delays thesampled signal f(zT) provided by a signal source 11 for one Fourierintegration interval 'r=NT. For example, the storage device 10 maysuitably be a digital shift register which is clocked or advanced at thesample rate. The f(zT) source 11 may assume any suitable form whichprovides a sampled data signal f(zT) which may or may not be of acomplex form f(zT) A(zT)+ B(zT).

An arithmetic means includes an algebraic addition network 12 and amultiplication network 13. The addition network 12 receives the 2"sample from the output of the storage device 10 and (z+N)" sample fromthe output of the f(zT) source 11 and takes the difference therebetweento provide at its output the difference value fl(z+N )T] -f(zT). Themultiplier 13 multiplies this difference value by the reference valueR(kQzT) as provided by reference signal source 14. This product value atthe output of multiplier 13 then corresponds to the right hand term ofequation (13). The product values which occur at the output ofmultiplier 13 are accumulated in an accumulator 15.

During the initializing or setup period of the discrete Fouriertransform apparatus, the Fourier coefficient F[(kQ), (z+N-l )T] as givenby equation (10 is calculated. When the discrete Fourier transformapparatus is first turned on, The accumulator 15 and the storage device10 are cleared to an initial condition such as an all zeroes state. As aresult, the output of the storage device 10 will be all zeroes for the Nsample times. Accordingly, the algebraic addition network 12 will passthe first N samples from the f(zT) source in an unaltered form to themultiplier 13 where they will be multiplied by the corresponding first Nreference values R(kQzT). These first N products essentially correspondto the individual product terms in equation (10) andare accumulated bythe accumulator 1 5 so as to provide at the end of the N sample sequencethe Fourier coefficient F[(k0), (z+Nl)T]. During each successive sampletime thereafter, the accumulated product value is updated by the outputproducts of the multiplier 13 so as to provide an updated Fouriercoefficient value in accordance with equation 13.

FIG. 3 shows a more detailed block diagram of discrete Fourier transformapparatus embodying the invention for the case of a complex input signalof the form f(zT)= A(zT) +jB (zT). Thus, the shift register 10-1 and alinear algebraic addition network 12-1 are provided for the real partA(zT) of the signal and another shift register 10-2 and anotheralgebraic addition network 12-2 are provided for the imaginary partB(zT) of the signal. The multiplier network 13 includes multiplyingcircuits 115-1 through 13-4 and algebraic addition networks 13-5 and13-6. The reference signal source 14 provides the complex referencevalues cos(kQzT) and sin(kflzT), where e cos (kQzT) j sin (kflzT). Thesequence of difference values at the output of the addition network 12-1are multiplied in the multipliers 13-2 and 13-3 by the sin(kQzT) and cos(kQzT) values, respectively. On the other hand, the sequence ofdifference values at the output of the addition network 12-2 aremultiplied in the multiplier 13-1 and 134 by the cos (kQzT) and sin(kOzT) values. respectively. The addition network 13-5 performs anaddition operation upon the outputs of the multipliers 13-1 and 13-2. Incontrast thereto, the addition network 13-6 takes the difference betweenthe outputs of the multipliers 13-3 and 13-4. The outputs of theaddition network 13-5 are accumulated in the accumulator 15-1 so as toprovide at its output the imaginary part of the Fourier coefficientF,(k0). On the other hand, the accumulator 15-2 serves to accumulate theoutputs of the addition network 13-6 so as to provide the real part F(k0) of the Fourier coefficient.

For the case where the imaginary part jB(zT) 0f the input signal can beignored, the register 10-2, adders 12-2, 13-5 and 13-6 and multipliers13-1 and 13-4 can be omitted. The resulting block diagram for thissituation where only the real part A(zT) of the input signal is to beevaluated is shown in FIG. 4. As can be seen in FIG. 4, the outputs ofthe multiplier 13-2 and 13-3 are connected directly to the accumulators15-1 and 15-2, respectively, and the addition networks 13-5 and 13-6 areomitted. The remainder of the connections in FIG. 4 for the real part ofA(zT) of the signal are the same as in FIG. 3.

The accumulators 15-1 and 15-2 may take on any suitable forms. Forexample, the accumulators may each include a shift register storagedevice and an adder (neither of which is shown). The shift registerstores the Fourier coefficient from the previous sample time. The adderadds the new product of the reference value and the difference value tothe stored value during each sample time and enters the result into theregister in place of the previous Fourier coefficient.

In the digital discrete Fourier transform embodiments of this invention,the input signal f(zT) and the reference signal R(kQzT) are, bydefinition, time quantized. In practice, these signals will also beamplitude quantized due to finite digital word lengths which areemployed in practical digital processing apparatus. Amplitudequantization of the complex reference signal, of course, introducesdeviation from the perfect sinusoidal shape. For design purposes, theamplitude quantization can be set at desired levels so as to simplifycircuits and/or to suppress specific harmonics. Of course, the choice ineach case must be balanced against the tolerable error in the discreteFourier transform coefficients. The R(kQz Tl source 14 may take on anysuitable form. For example, the output of the look up table included inthe digital frequency synthesizer described in our copending applicationSer. No. 206,070 filed Dec. 8, l97l for Modular Signal Processor may beemployed.

What is claimed is:

1. Discrete Fourier transform apparatus comprising means for providing astream of signal samples f(zT),

where T is the sampling interval in the time domain and 5 z storagemeans for delaying said f(zT) signal samples for an interval NT, where Nis the number of signal samples in the integration interval of thediscrete Fourier transform of any sequence f(nT) of said f(zT) samples,where 2 n g z N-l;

arithmetic means coupled to receive said signal samples f(zT) and thedelayed version thereof and arranged l. for taking the differencesbetween samples which are NT apart in time so as to provide a sequenceof difference values; and 2. for multiplying said sequence of differencevalues by a sequence of complex reference values R(kO.zT) for at leastone value of k to produce a resulting sequence of products; and meansfor accumulating said products to provide an updated Fourier coefficientvalue for each value of 2. The invention as set forth in claim 1 whereinsaid arithmetic means includes a first network for taking saiddifferences and a second network for performing said multiplications.

3. The invention as set forth in claim 2 wherein said second networkincludes a first circuit for multiplying said difference values by thereal part of the complex reference signal R(kQzT) to produce a resultantsequence of real products and a second circuit for multiplying saiddifference values by the imaginary part of the reference signal toproduce a resulting sequence of imaginary products; and

wherein said accumulating means includes first and second accumulatorsfor accumulating said real and imaginary products, respectively.

4. The invention as set forth in claim 2 wherein said f(zT) signalincludes a real part A(zT) and an imagi- LII nary part jB(zT);

wherein said storage means includes first and second storage devices fordelaying said A(zT) and jB(zT) signal parts, respectively, for theinterval NT;

wherein said first network includes first and second circuits for takingthe differences between the real and imaginary sample partsrespectively, which are NT apart in time so as to produce a sequence ofreal and a sequence of imaginary values;

wherein said second network includes first and second complexmultiplying circuits for multiplying said real and imaginary differencevalue sequences by the complex reference signal to produce a sequence ofreal and a sequence of imaginary products; and

wherein said accumulating means includes first and second accumulatorsfor accumulating said real and imaginary products, respectively.

mg I UNITED STATES PATENT OFFICE N CERTIFICATE OF CGRRECTION Patent No.3, 778, 606 I D ated Decerxfloer .11, 1973 Inventor(s) Joseph W; Schmittet al I It is certified that error appears in the above-identifiedpatent and that said Letters Patent are hereby corrected as, shownbelow:

I' S 5 g A Column 1, lmes 30 and 31 0} L n N-l should be 0 n N-l columhZ-line 66 jk nT should be -jckfln'I' Signed and sealed this 110th day.of se teriber 197u; A

(SEAL) Attest v McCOY GIBSONQJ R. c. MARSHALL DANN Q Attesting OfficerCommissioner ofPaterits'

1. Discrete Fourier transform apparatus comprising means for providing astream of signal samples f(zT), where T is the sampling interval in thetime domain and - infinity < OR = z < OR = infinity ; storage means fordelaying said f(zT) signal samples for an interval NT, where N is thenumber of signal samples in the integration interval of the discreteFourier transform of any sequence f(nT) of said f(zT) samples, where z <OR = n < OR = z + N-1; arithmetic means coupled to receive said signalsamples f(zT) and the delayed version thereof and arranged
 1. for takingthe differences between samples which are NT apart in time so as toprovide a sequence of difference values; and
 2. for multiplying saidsequence of difference values by a sequence of complex reference valuesR(k Omega zT) for at least one value of k to produce a resultingsequence of products; and means for accumulating said products toprovide an updated Fourier coefficient value for each value of z.
 2. Theinvention as set forth in claim 1 wherein said arithmetic means includesa first network for taking said differences and a second network forperforming said multiplications.
 2. for multiplying said sequence ofdifference values by a sequence of complex reference values R(k OmegazT) for at least one value of k to produce a resulting sequence ofproducts; and means for accumulating said products to provide an updatedFourier coefficient value for each value of z.
 3. The invention as setforth in claim 2 wherein said second network includes a first circuitfor multiplying said difference values by the real part of the complexreference signal R(k Omega zT) to produce a resultant sequence of realproducts and a second circuit for multiplying said difference values bythe imaginary part of the reference signal to produce a resultingsequence of imaginary products; and wherein said accumulating meansincludes first and second accumulators for accumulating said real andimaginary products, respectively.
 4. The invention as set forth in claim2 wherein said f(zT) signal includes a real part A(zT) and an imaginarypart jB(zT); wherein said storage means includes first and secondstorage devices for delaying said A(zT) and jB(zT) signal parts,respectively, for the interval NT; wherein said first network includesfirst and second circuits for taking the differences between the realand imaginary sample parts respectively, which are NT apart in time soas to produce a sequence of real and a sequence of imaginary values;wherein said second network includes first and second complexmultiplying circuits for multiplying said real and imaginary differencevalue sequences by the complex reference signal to produce a sequence ofreal and a sequence of imaginary products; and wherein said accumulatingmeans includes first and second accumulators for accumulating said realand imaginary products, respectively.